package cn.tedu._04mybatis.mapper;

import cn.tedu._04mybatis.pojo.entity.Comment;
import cn.tedu._04mybatis.pojo.vo.SelectCommentVO1;
import cn.tedu._04mybatis.pojo.vo.SelectCommentVO2;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface CommentMapper {
    // 1. 插入: `insertComment` , 在评论表中插入1条数据;
    @Insert("insert into comment(content,created,user_Id,weibo_Id) values (#{content},#{created},#{userId},#{weiboId})")
    int insertComment(Comment comment);

    //2. 删除: `deleteById` , 根据id删除1条评论;
    @Delete("delete from comment where id=#{id}")
    int deleteById(Long id);

    //3. 修改: `updateById` , 根据id修改评论信息;
    @Update("update comment set content = 'Java转行干炒饭' where id =#{id}")
    int updateById(Long id);

    //4. 查询:  `selectCommentById1`，根据评论的id查询评论的 内容、用户ID、微博ID（数据库表中确认）
    @Select("select content,user_id userId,weibo_id weiboId from comment where id=#{id}")
    SelectCommentVO1 selectCommentById1(Long id);

    // 5. 查询 `selectCommentById2`，根据微博的id查询评论的 内容、用户ID（数据库表中确认）
    @Select("select user_id userId,content from comment where weibo_id =#{weiboId}")
    List<SelectCommentVO2> selectCommentById2(Long weiboId);

}
